草庐IT

Hadoop 之 HDFS

全部标签

java - Hadoop:是否可以将多个文件放在一起?

我有包含许多文件的输入。它们的大小大于blockSize。每个文件在被处理后,至少诱导一个InputSplit来处理它。一个问题是:是否可以一次处理多个文件?基于FileInputFormat代码,它不是:for(FileStatusfile:files){337Pathpath=file.getPath();338longlength=file.getLen();339if(length!=0){340BlockLocation[]blkLocations;341if(fileinstanceofLocatedFileStatus){342blkLocations=((Located

hadoop - 动态计算oozie参数(MR Action 的reducer数量)

在我的oozie工作流程中,我动态创建了一个配置单元表,比如T1。此配置单元操作之后是映射减少操作。我想将reducers属性(mapred.reduce.tasks)的数量设置为等于字段的不同值,比如(T1.group)。关于如何动态设置某些oozie参数的值以及如何从hive不同操作获取参数值到oozie参数的任何想法? 最佳答案 希望对您有所帮助:像您已经做的那样创建配置单元表。执行另一个Hive查询,计算列的不同值并将其写入hdfs中的文件。创建一个Shell操作,它将读取文件并以key=value的形式回显值。为shell

hadoop - 我们可以在 pig 中通过::分隔符拆分文件列吗

我正在尝试读取一个分隔符为双冒号(::)的文件。我正在使用CSVExcelStorage,但它给出的错误如下:couldnotinstantiate'org.apache.pig.piggybank.storage.CSVExcelStorage'witharguments'[::]'那么有什么方法可以使用自定义分隔符读取文件吗? 最佳答案 您可以使用PigStorage使用您的自定义分隔符。 关于hadoop-我们可以在pig中通过::分隔符拆分文件列吗,我们在StackOverflo

sql-server - 我们可以使用 PostgreSQL 和 PolyBase 来连接 Hadoop 吗?

微软终于进军大数据领域,推出了PolyBase接口(interface)来连接Hadoop,让现有的MSSQLServer用户可以利用Hadoop生态系统存储大量数据。这里我有1个问题,我们可以使用postgreSQL而不是MSSQLServer来使用最近随MSSQLServer2016发布的PolyBase接口(interface)连接Hadoop。我知道还有很多其他方法可以做到这一点,但想特别了解如何使用PolyBase(PDW)。实际上,我的公司总是欢迎微软作为基于其平台的大部分应用程序参与的解决方案。我知道使用PolyBase并行数据仓库是可能的,但需要一些提示才能做到这一点。

hadoop - 将运行多少映射器?

我有这个问题。假设我有3个数据节点+节点管理器(集群)。我们的复制因子为3。在第一个集群中我们有4个block,因此默认情况下4个映射器将在第一个集群上并行运行。那么因为我们的复制因子为3,所以我们将在开始时运行12个映射器? 最佳答案 block数取决于文件大小。如果您有1gb的文件,可以构成8个block(共128mb)。所以现在所有8个block将按照datalocalityandrackawareness被复制三次-但这并不意味着当您针对此文件运行任何作业时,将处理所有24(8x3)block。复制用于从磁盘故障类型的场景中

hadoop - Hbase 和 apache drill 存储插件

我无法在Hbase和ApacheDrill之间创建连接。我无法理解问题出在Hbase还是ApacheDrill。我可以在Drill中创建存储插件。这是我给出的配置。{"type":"hbase","config":{"hbase.zookeeper.quorum":"localhost","hbase.zookeeper.property.clientPort":"2181"},"size.calculator.enabled":false,"enabled":true}drill的GUI返回成功。但是当我尝试从drill中查询它时,出现多个错误。现在我遇到以下错误。Error:SYS

Bash - 如何检查文件是否已上传到 hdfs?

我createdafolderinhdfs.现在,我尝试将文件从我的本地文件系统上传到tmp文件夹,如下所示:hdfsdfs-putopt/ibm/labfiles/README.md/user/root/input/tmp但我得到消息:put:'/user/root/input/tmp':Fileexists我不明白的是:如果文件存在,当我运行测试时,我没有看到列出的文件,但文件夹具有文件的大小(4811位)。再一次,tmp甚至可能不是一个文件夹:如何查看tmp是否为文件夹?我如何查看README.md文件是否在tmp中,如果不在,我如何将它放在那里?从此处启动SparkShell时

hadoop - 无法运行 Spark Java 程序

我正在运行一个用java编写的Spark程序,我正在使用示例wordcount示例。我已经创建了一个jar文件,但是当我提交spark作业时它抛出了一个错误。$spark-submit--classWordCount--masterlocal\home/cloudera/workspace/sparksample/target/sparksample-0.0.1-SNAPSHOT.jar我收到以下错误java.lang.ClassNotFoundException:wordCountatjava.net.URLClassLoader$1.run(URLClassLoader.java:

hadoop - Sqoop 导入没有分割

我正在尝试导入一个以复合键为主键的Teradata表。因此设置--nummapper1并在没有--split-by参数的情况下运行它。但是,我遇到了以下问题。请帮忙。Error:java.io.IOException:SQLExceptioninnextKeyValueatorg.apache.sqoop.mapreduce.db.DBRecordReader.nextKeyValue(DBRecordReader.java:277)atorg.apache.hadoop.mapred.MapTask$NewTrackingRecordReader.nextKeyValue(MapTa

hadoop - Apache Flink - 跟踪最大值

假设我有一个由元组组成的数据流(t,q)其中t是感兴趣的变量。是否有一种分布式方式来跟踪具有最大t的元组?仅在t高于全局最大值时发出? 最佳答案 你考虑过Flink的状态特性吗?(https://ci.apache.org/projects/flink/flink-docs-release-1.0/apis/streaming/state.html)我自己对Flink很陌生,但我认为它提供了您正在寻找的功能。 关于hadoop-ApacheFlink-跟踪最大值,我们在StackOver